package gbench.appdemo.mall.erp.components;

public interface IPrice {

    /**
     * 价格乘法
     * 
     * @param price 价格数量
     * @return 价格
     */
    public IPrice mul(final Number price);

    /**
     * 
     * @return
     */
    public Double getAmount();

    /**
     * 货币
     * 
     * @return 提取货币对象
     */
    public IMoney getMoney();

    /**
     * 对当前price采用货币money重新计价
     * 
     * @param money 计价货币
     * @return 货币重新计价
     */
    public IPrice priceOf(final IMoney money);

    /**
     * 价格乘法
     * 
     * @param price 价格对象
     * @return 价格
     */
    public IPrice mul(final IPrice price);

    /**
     * 
     * @param another_price
     * @return
     */
    public IPrice reprice(final IPrice another_price);

}
